package fsahoraires.gui.pages;

import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.*;

import fsahoraires.cours.Cours;
import fsahoraires.cours.Occupation;
import fsahoraires.programmes.Semestre;

public class HoraireSemestrePage extends HorairePage {

	private Semestre semestre;
	private int semaine = 0;

	public HoraireSemestrePage(Semestre semestre) {
		super("Horaire");
		this.semestre = semestre;
	}

	protected void updateHoraire() {
		if (semaine == 0)
			horaire = semestre.getHoraire();
		else
			horaire = semestre.getHoraire(semaine);
	}

	protected void fetchHoraire() {
		for (Cours cours : semestre) {
			cours.fetch(false, true);
		}
	}

	protected void addCustomBottomLeft(Composite parent) {
		final Combo combo = new Combo(parent, SWT.BORDER | SWT.READ_ONLY);
		combo.setToolTipText("Affichage des semaines");
		combo.add("Toutes les semaines");
		for (int i = 1; i <= Occupation.NUM_SEMAINES; i++)
			combo.add("Semaine " + i);
		combo.select(0);
		combo.addSelectionListener(new SelectionAdapter() {
			public void widgetSelected(SelectionEvent e) {
				semaine = combo.getSelectionIndex();
				update();
			}
		});
	}

}
